Package-level declarations
Types
Feeds the error back to the LLM with a fuzzy-match suggestion, allowing it to self-correct. Matches tool names using case-insensitive containment (either direction). Throws ToolNotFoundException after maxRetries consecutive failures.
Chains multiple injection strategies into a pipeline.
Action returned by EmptyResponsePolicy.handle.
Determines how the tool loop responds when the LLM returns a blank text response with no tool calls. This is a known failure mode of weak open-weights models (gpt-oss-20b, qwen, etc.) after a tool call when they don't know how to proceed — see EmptyLlmResponseException.
Preserve the current behaviour: exit the loop with empty content and let the rendering layer surface the typed EmptyLlmResponseException. This is the default to keep the upgrade backwards-compatible.
Throws ToolNotFoundException immediately on first unknown tool call.
Framework-agnostic result of a single LLM inference call. Represents the assistant's response which may include tool calls.
Framework-agnostic interface for making a single LLM inference call.
Thrown when the tool loop exceeds the maximum number of iterations.
Thrown when a required tool group is unavailable or missing expected tools at resolution time. This is distinct from ToolNotFoundException, which is thrown during tool loop execution when the LLM requests an unavailable tool.
Re-prompt the LLM with message up to maxRetries times before giving up. After exhaustion returns EmptyResponseAction.Throw so the caller sees the typed exception rather than blank content.
Result of a tool call execution.
Context provided to injection strategies for decision-making.
Result of tool injection evaluation.
Strategy for dynamically injecting tools during a conversation.
Factory for creating ToolLoop instances.
Result of executing an Embabel tool loop.
Action returned by ToolNotFoundPolicy.handle.
Thrown when the LLM requests a tool that is not available.
Determines how the tool loop responds when the LLM calls a tool that does not exist in the available set.
Injection strategy that handles UnfoldingTool invocations.